package com.dashboard.dkmh;

import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

import com.lb.jwitter.connectDatabase.ConnectPDT;
import com.opensymphony.xwork2.Action;

public class report {

	private int tab;

	public int getTab() {
		return tab;
	}

	private String tabname;

	public String getTabname() {
		return tabname;
	}

	private int page;

	public int getPage() {
		return page;
	}

	private String pagename;

	public String getPagename() {
		return pagename;
	}

	private String smalltitle;

	public String getSmalltitle() {
		return smalltitle;
	}

	private List<List<String>> listpage;

	public List<List<String>> getListpage() {
		return listpage;
	}

	// -----------------danh muc----------------------------
	private ArrayList<HashMap<String, String>> listKhoa;

	public ArrayList<HashMap<String, String>> getListKhoa() {
		return listKhoa;
	}

	public String report1() throws Exception {
		// du lieu dung chung
		tab = 1;
		tabname = "Đăng ký môn học";

		page = 1;
		listpage = new ArrayList<List<String>>();
		listpage.add(new ArrayList<String>(Arrays.asList("dkmhreport1.action",
				"Tình hình đăng ký môn học")));
		listpage.add(new ArrayList<String>(Arrays.asList("dkmhreport2.action",
				"Kết quả học tập")));
		List<String> p = (listpage.get(page - 1));
		pagename = p.get(1);

		smalltitle = "Báo cáo tình hình đăng ký môn học của từng KHOA theo Học Kỳ";

		// -------------------------------------------
		// du lieu rieng
		// lay danh muc khoa
		listKhoa = new ArrayList<HashMap<String, String>>();
		String query = "select DISTINCT MA_KHOA, TEN_KHOA from PDT_WEB.DM_KHOA where MA_KHOA is not null ORDER BY MA_KHOA";
		HashMap<String, String> map;

		System.out.println("->Bat dau lay {listKhoa}");
		ConnectPDT connectionOracle = new ConnectPDT();
		if (connectionOracle.getConnection() != null) {
			ResultSet data = connectionOracle.getData(query);
			if (data != null) {
				while (data.next()) {
					map = new HashMap<String, String>();
					String ma = data.getString("MA_KHOA");
					String ten = data.getString("TEN_KHOA");
					map.put("ma", ma);
					map.put("ten", ten);
					listKhoa.add(map);
					System.out.println("+ma: " + ma + " , ten:" + ten);
				}
			} else {
				System.out.println("@data null");
			}
		} else {
			System.out.println("@connection false");
		}
		System.out.println("#lay {listKhoa} xong");
		connectionOracle.closeConnection();

		return Action.SUCCESS;
	}

	public String report2() throws Exception {
		// du lieu dung chung
		tab = 1;
		tabname = "Đăng ký môn học";

		page = 2;
		listpage = new ArrayList<List<String>>();
		listpage.add(new ArrayList<String>(Arrays.asList("dkmhreport1.action",
				"Tình hình đăng ký môn học")));
		listpage.add(new ArrayList<String>(Arrays.asList("dkmhreport2.action",
				"Kết quả học tập")));
		List<String> p = (listpage.get(page - 1));
		pagename = p.get(1);

		smalltitle = "Báo cáo kết quả học tập của từng KHOA theo Học Kỳ";

		// du lieu rieng
		// lay danh muc khoa
		listKhoa = new ArrayList<HashMap<String, String>>();
		String query = "select DISTINCT MA_KHOA, TEN_KHOA from PDT_WEB.DM_KHOA where MA_KHOA is not null ORDER BY MA_KHOA";
		HashMap<String, String> map;

		System.out.println("->Bat dau lay {listKhoa}");
		ConnectPDT connectionOracle = new ConnectPDT();
		if (connectionOracle.getConnection() != null) {
			ResultSet data = connectionOracle.getData(query);
			if (data != null) {
				while (data.next()) {
					map = new HashMap<String, String>();
					String ma = data.getString("MA_KHOA");
					String ten = data.getString("TEN_KHOA");
					map.put("ma", ma);
					map.put("ten", ten);
					listKhoa.add(map);
					System.out.println("+ma: " + ma + " , ten:" + ten);
				}
			} else {
				System.out.println("@data null");
			}
		} else {
			System.out.println("@connection false");
		}
		System.out.println("#lay {listKhoa} xong");
		connectionOracle.closeConnection();
		return Action.SUCCESS;
	}

}
